	var express = require('express')
	var User=require('./models/user.js')
	var News=require('./models/news.js')
	var md5 = require('blueimp-md5')

	var router =express.Router()

	// 首页
	router.get('/',function(req,res){
		User.find(function(err,ReData){
			if(err){
				console.log('wrong....')
			}
			res.render('index.html',{
				user:req.session.user
			})
		})
	})



	// 登入页
	router.get('/login',function(req,res){
		res.render('login.html')
	})
	// 处理提交登入信息
	router.post('/login',function(req,res){
		// console.log(req.body)
		// 从数据库判断数据是否已被注册，如果匹配成功则返回该一条数据对象，若没有，则返回null
		User.findOne({email: req.body.email,password: req.body.password}, function (err, ReData) {
			if (err) {
				return res.status(500).json({
					err_code: 500,
					message: err.message
				})
			}

		// console.log(ReData)
		// 如果ReData返回空，则表示登入的邮箱或密码和数据库不匹配
		if(!ReData){
			return res.status(200).json({
				code: 1,
				message: '密码或邮箱错误'
			})
		}
				//执行到这，说明用户和密码正确，用session记录登入信息
				req.session.user=ReData
			// 登入成功，向ajax返回0
			res.status(200).json({
				code: 0,
				message: '登入成功'
			})
		})
	})  

	// 注册页
	router.get('/register',function(req,res){
		res.render('register.html')
	})
	// 处理提交注册信息
	router.post('/register',function(req,res){
	     // return console.log(req.body)
		// 从数据库判断数据是否已被注册,如果查询到了，则返回该数据对象
		User.findOne({ $or: [{email: req.body.email},
			{name: req.body.name}]}, function (err, ReData) {
				if (err) {
					return res.status(500).json({
						code: 500,
						message: '服务端错误'
					})
				}  
		// 如果ReData不为空，则表示在数据库中匹配到了该注册的数据
		if(ReData){
			return res.status(200).json({
				code:1,
				message: '用户名或邮箱已被注册'
			})
		}
				// return console.log(ReData)
		     // 如果数据合法，则加密，保存
		     // req.body.password =req.body.password
		     new User(req.body).save(function (err, ReData) {
		     	if (err) {
		     		return res.status(500).json({
		     			err_code: 500,
		     			message: 'Internal error.'
		     		})
		     	}  
		     // 注册成功，直接登入，并使用session记录登入信息
		     req.session.user=ReData
		     res.status(200).json({
		     	code:0,
		     	message:'注册成功'
		     })
		 })
		 })
	})
	// 内容页
	router.get('/topic',function(req,res){
		News.find(function(err,ReData){
			res.render('./comment/content.html',{
				user:req.session.user,
				News:ReData
			})
		})
		
	})

	//处理提交发表评论
	router.post('/topics/new',function(req,res){
	      // console.log(req.body)
	      var today=new Date()
	      var year=today.getFullYear()
	      var month=today.getMonth()+1
	      var day=today.getDate()
	      month=month>10?month:'0'+month
	      day=day>10?day:'0'+day
	      req.body.time=year+'-'+month+'-'+day
	      var user=req.session.user
	      new News(req.body).save(function (err, ReData) {
	      	if (err) {
	      		console.log('wrong....')
	      	} 
	      })
	      res.redirect('/topic')
	  })
	// 设置页面
	router.get('/setting/base',function(req,res){
		res.render('./setting/base.html',{
			user:req.session.user
		})
	})
	// 安全设置页面
	router.get('/setting/safe',function(req,res){
		res.render('./setting/safe.html',{
			user:req.session.user
		})
	})
	//修改安全设置
	router.post('/setting/safe',function(req,res){
		 // console.log(req.body)
		 // 如果匹配成功，则返回相应的对象，若失败，则为空
		 User.findOne({_id: req.body.id,password: req.body.oldpassword}, function (err, ReData) {
		 	if (!ReData) {
		 		return res.status(500).json({
		 			code: 500,
		 			message: '密码错误'
		 		})
		 	}
	       // console.log(ReData)
	       // 把新密码存到数据库
	       User.findByIdAndUpdate(req.body.id, {password:req.body.newpassword}, function(err,ReData){
	       })
	       res.status(200).json({
	       	code:0,
	       	message:'密码修改成功'
	       })
	   })
		})

	// 修改个人信息
	router.post('/update',function(req,res){
		// console.log(req.body.name)
		User.findByIdAndUpdate(req.body.id, req.body, function(err,ReData){
		})
		req.session.user=req.body
		
		res.redirect('/')
	})


	//退出登入
	router.get('/logout',function(req,res){
		req.session.user=null
		res.redirect('/login')
	})
	// 注销账号
	router.get('/del',function(req,res){
		// console.log(req.query.id)
		User.findByIdAndRemove(req.query.id, function(err,ReData){
			if(err){
				console.log('wrong.....')
			}
		})
		res.redirect('/login')
	})




	module.exports=router